perm filename LINES.F4[P11,LCS]1 blob
sn#579531 filedate 1981-04-14 generic text, type T, neo UTF8
SUBROUTINE LINES(A,B,L)
COMMON/DST/BB,CC /SIZ/RSZ,JCEN,KCEN
COMMON/DL/IXRX,SAVER,AA /PLTR/IPLT,RHT,DIS
COMMON R2,JA,CENTR,JB,RJQ(20),JQ(20)
COMMON /DPY/JJ(4000),MEDIT,IGO /DPTR/WDS(350)
EQUIVALENCE (JJ2,JJ(2))
DATA BB/.008/,CC/3.5/
C LINED: 0 ;WE GET HERE FROM FILLMS -- NEEDED FOR DISTORTION SYSTEM
GO TO 23
22 IF(JQ(1).NE.0)GO TO 23
C USE P11 > 0 FOR DISTORTION.
C P11 IS BB (DIST) P12 IS CC(DST+1)
C DST=.005 DST+1=2.2 (IN FILMSS.FAI) (.0044, 3.5 IN 'ADVICE')
IF(CC.EQ.1000)GO TO 23
B=B*(CC-BB*ABS(A))
C BB IS DST, CC IS DST+1
23 IF(JJ2.GT.3990)RETURN
C AVOID OVERLOADING DPY BUFFER(4000)
M=A*RSZ
N=B*RSZ
IF(RSZ.LE.0.8571)GO TO 3
C; SO WE CAN ZOOM UP,DOWN,LEFT,RIGHT AND ANY SIZE MOVE T,[=0.8571]
M=M-JCEN
N=N-KCEN
3 CALL CLIP(M,N,L)
END
SUBROUTINE EDIT(JJA)
COMMON/ALF/INP(72),ML /UPDWN/ RL,UD
COMMON /SC/JL,LJ,MK
1 ,ISKP,XMINUS,N,REXP,LK,NNUM,JM,JN,DBST,NFLG,IXX,ISEMI,QQ
1 ,RVX(50),IAMP,A,RRN,B,MODE,IBLA
COMMON R2,JA,CENTR,J2,RJQ(20),JQ(20)
COMMON/RRJJ/RJJ2,RJJ(20)
EQUIVALENCE (RVX1,RVX(1)),(RVX2,RVX(2)),(RVX4,RVX(4))
1,(RVX3,RVX(3)),(RJ6,RJJ(4)),(RJ9,RJJ(7)),(R3,RJQ(1)),(RJ8,RJJ(6))
1,(RJ5,RJJ(3)),(RJ10,RJJ(8)),(INP2,INP(2)),(INP20,INP(20))
JN=-1
C THIS IS FLAG IN SCANR
INP20=ISEMI
C SETS LIMIT IN SCANR
ML=1
RVX2=0
RVX4=0
C E=EDIT(55), C=COPY(2222), X=EXIT(222), DE=DEL(99), LP=LTPN
CALL SCANR
JN=0
R2=RVX2
IF(RVX1.GT.10.)GO TO 7
JA=0
IF(RVX2.NE.0)GO TO 8
IF(INP2.EQ.'P')GO TO 5
RVX2=RL
IF(RVX1.GT.2)RVX2=UD
C STORES RT-LFT OR UP-DOWN INFO
GO TO 8
C FOR LIGHT PEN MOVING
7 JA=RVX1
IF(JA.EQ.99)R2=0
IF(R2.NE.0)RETURN
IF(JA.NE.55)RETURN
5 CALL LPEN(R3,R2,K)
C ↑↑↑ K NOT USED!
IF(JA.EQ.0)CALL EXCH(R2,R3)
RVX1=2.
RVX2=R3-RJJ(1)
RVX3=3.
RJQ(2)=0
RJJ2=R2
C SO JD WILL BE 0 IN MAIN PROG.
C FOR EDIT MODE
8 IF(JA.EQ.55)RETURN
IF(INP2.EQ.'P')GO TO 17
IF(RVX1.GT.2)GO TO 117
RL=RVX2
IF(RVX4.NE.0)UD=RVX4
GO TO 17
117 IF(RVX4.NE.0)RL=RVX4
UD=RVX2
17 R2=.00001
JA=0
K=RVX1
857 IF(K.LE.0)GO TO 1
IF(K.GE.5)GO TO 2
C -- CATCHES SOME ERRORS.
GO TO (1,2,3,4),K
4 RVX2=-RVX2
C SKIP IF NOT CODE 4
3 IF(JJA.NE.4)GO TO 31
IF(RJ6.NE.0)GO TO 31
C IGNORE BAR LINES -- IF(R5.EQ.0.AND.R6.EQ.0)GO TO 856
IF(RJ5.EQ.0)GO TO 856
31 CALL MVBEAM(RJJ,0,2,2,RVX2)
C MOVES UP AND DOWN. HANDLES MINIS, ETC.
IF(JJA.LT.4)GO TO 856
IF(JJA.GT.6)GO TO 856
C I THINK R2 MUST BE NON-ZERO TO WORK IN EDIT MODE?
12 IF(RJ5.EQ.50.OR.RJ5.EQ.150)GO TO 856
C 50,150=CRESC.-DECRESC.
RJ5=RJ5+RVX2
C MOVES 5TH PARAM UP OR DOWN
GO TO 856
1 RVX2=-RVX2
2 R2=RVX2
856 IF(RVX4.EQ.0)GO TO 858
K=RVX3
RVX2=RVX4
RVX4=0
GO TO 857
858 IF(R2.EQ..00001)GO TO 7515
IF(JJA.LT.5)GO TO 477
IF(JJA.LE.8)GO TO 5515
477 IF(JJA.NE.4)GO TO 7515
IF(RJ6.EQ.0.AND.RJ5.EQ.0)GO TO 7515
C RARE CASES MIGHT BE FOUND! USING P7≠0
C ABOVE FOR P1=6 (BEAMS, SLURS, LINES)
5515 IF(RJ6.NE.0)RJ6=RJ6+R2
IF(JJA.NE.6)GO TO 7515
IF(RJ9.EQ.0)GO TO 7515
IF(RJ7.GT.0)GO TO 88
CCC IF(RJ10.NE.0)GO TO EDX1
IF(RJ9.GT.0)GO TO 7514
88 IF(RJ8.EQ.0)GO TO 7515
IF(RJ8.GE.0)RJ8=RJ8+R2
7514 IF(RJ9.GE.0)RJ9=RJ9+R2
C RJ9(P9) IS LOC. OF INNER NOTE IN BEAM RANGE. SKIPS NUMBERS IN P9.
7515 RJJ(1)=R2+RJJ(1)
END